#define        RCC_APB2ENR       (0x40021000 + 0x18)

#define        GPIOC_CRL        (0x40011000 + 0x00)
#define        GPIOC_ODR        (0x40011000 + 0x0C)

#define        rRCC_APB2ENR    *(unsigned int *)RCC_APB2ENR
#define        rGPIOC_CRL        *(unsigned int *)GPIOC_CRL
#define        rGPIOC_ODR        *(unsigned int *)GPIOC_ODR


void delay(void)
{
    volatile unsigned int a,b;
    for(a = 0; a < 1000; a++)
        for(b = 0; b < 1000; b++);
}

int main(void)
{
    //PC??????
    rRCC_APB2ENR |= (0x1<<4);
    //??PC0~7???,????10MHz??
    rGPIOC_CRL &= ~(0xFFFFFFFF);
    rGPIOC_CRL |= (0x11111111);

    while(1)
    {
        delay();
        rGPIOC_ODR &= ~(0xFF);
        delay();
        rGPIOC_ODR |= 0xFF;
    }
}